package businessLogic.service;

import dao.ContactoDAO;
import entity.Contacto;
import java.util.List;
import javax.persistence.EntityManager;
import vo.ContactoVO;
import vo.IValueObject;

/**
 *
 * @author Alexander
 */
public class ContactoService implements IService{

    @Override
    public void persist(IValueObject vo, EntityManager em) {
        Contacto entity = new Contacto();
        entity.setId(((ContactoVO)vo).getId());
        entity.setNombre(((ContactoVO)vo).getNombre());
        entity.setApellido(((ContactoVO)vo).getApellido());
        entity.setTelefonos(((ContactoVO)vo).getTelefonos());
        
        //entity.setAgenda();
        
        new ContactoDAO().persist(entity, em);
    }

    @Override
    public IValueObject find(Object id, EntityManager em) {
        return new ContactoDAO().find(id, em);
    }

    @Override
    public void update(IValueObject vo, EntityManager em) {
        Contacto entity = new Contacto();
        entity.setId(((ContactoVO)vo).getId());
        entity.setNombre(((ContactoVO)vo).getNombre());
        entity.setApellido(((ContactoVO)vo).getApellido());
        entity.setTelefonos(((ContactoVO)vo).getTelefonos());
        
        //entity.setAgenda();
        
        new ContactoDAO().update(entity, em);
    }

    @Override
    public void delete(Object id, EntityManager em) {
        new ContactoDAO().delete(id, em);
    }

    @Override
    public List<IValueObject> getList(EntityManager em) {
        return new ContactoDAO().getList(em);
    }
    
}
